package com.ruoyi.background.mapper;

import com.ruoyi.background.domain.AppWechatUser;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 微信小程序用户Mapper接口
 *
 * @author susu
 * @date 2024-08-17
 */
public interface AppWechatUserMapper {
    /**
     * 查询微信小程序用户
     *
     * @param id 微信小程序用户主键
     * @return 微信小程序用户
     */
    public AppWechatUser selectAppWechatUserById(Long id);

    /**
     * 通过openid查询
     *
     * @param openid openid
     * @return 结果
     */
    public AppWechatUser selectAppWechatByOpenid(String openid);

    /**
     * 获取用户的信息 通过id
     *
     * @param userId userId
     * @return 结果
     */
    public AppWechatUser selectAppWechatByUserId(Long userId);

    /**
     * 查询 微信授权手机号 是否被其他微信绑定
     * @param openid 微信标识
     * @param phoneNumber 手机号
     * @return 结果
     */
    public AppWechatUser selectUserByUserIdWithoutPhoneNumber(@Param("openid") String openid, @Param("phoneNumber") String phoneNumber);

    /**
     * 查询微信小程序用户列表
     *
     * @param appWechatUser 微信小程序用户
     * @return 微信小程序用户集合
     */
    public List<AppWechatUser> selectAppWechatUserList(AppWechatUser appWechatUser);

    /**
     * 新增微信小程序用户
     *
     * @param appWechatUser 微信小程序用户
     * @return 结果
     */
    public int insertAppWechatUser(AppWechatUser appWechatUser);

    /**
     * 修改微信小程序用户
     *
     * @param appWechatUser 微信小程序用户
     * @return 结果
     */
    public int updateAppWechatUser(AppWechatUser appWechatUser);

    /**
     * 删除微信小程序用户
     *
     * @param id 微信小程序用户主键
     * @return 结果
     */
    public int deleteAppWechatUserById(Long id);

    /**
     * 批量删除微信小程序用户
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAppWechatUserByIds(Long[] ids);
}
